Methods and apparatus for aligning a lens holder in a small-height scan engine

ABSTRACT

Methods and apparatus for aligning a lens holder in a small-height scan engine are disclosed herein. An example method for aligning a lens holder in a small-height scan engine includes: mounting an image sensor to a circuit board; optically aligning, using one or more alignment fixtures, a lens holder holding one or more lenses or optical elements with the image sensor based upon one or more images captured by the image sensor through the lens holder; and after the lens holder and image sensor are optically aligned, physically aligning, using the one or more alignment fixtures, the lens holder with the circuit board based upon a misalignment between a surface of the lens holder and an edge of the circuit board.

BACKGROUND

Conventionally, a scan engine is assembled by, among other things,mounting an image sensor to a circuit board, optically aligning a lensholder holding one or more lenses with the image sensor, and securingthe lens holder to the circuit board. The scan engine is typicallymounted in a housing via holes in the circuit board. Therefore, in manyinstances, an actual dimension of the circuit board in at least onedirection determines an overall actual dimension of the scan engine inthat direction. Accordingly, a dimension of an area in the housing inwhich the scan engine is to be mounted can be determined based upon acorresponding maximum dimension of the circuit board. However, in asmall-height or miniature scan engine (e.g., having a height less than 1cm, a height of 7.2 mm, etc.), the circuit board and the lens holder mayhave the same nominal dimension in at least one direction. Thus,tolerances in the dimensions of the circuit board, tolerances in thedimensions of the lens holder, mounting tolerances for the image sensor,optical alignment tolerances, etc. may result in the small-height scanengine having an overall dimension in at least one direction thatexceeds a maximum allowed size.

According, there is a need for methods and apparatus for aligning a lensholder in a small-height scan engine.

SUMMARY

In an embodiment, a method for aligning a lens holder in a small-heightscan engine includes: mounting an image sensor to a circuit board;optically aligning, using one or more alignment fixtures, a lens holderholding one or more lenses or optical elements with the image sensorbased upon one or more images captured by the image sensor through thelens holder; and after the lens holder and image sensor are opticallyaligned, physically aligning, using the one or more alignment fixtures,the lens holder with the circuit board based upon a misalignment betweena surface of the lens holder and an edge of the circuit board.

In a variation of this embodiment, physically aligning the lens holderwith the circuit board includes physically aligning the surface of thelens holder with the edge of the circuit board.

In a variation, the surface of the lens holder is aligned with the edgeof the circuit board when the surface of the lens holder and the edge ofthe circuit board are coplanar.

In a variation, the surface of the lens holder, when physically alignedwith the edge of the circuit board, together with the edge of thecircuit board form a first mounting surface, and the method furtherincludes securing the scan engine in a housing such that the firstmounting surface is secured against a second mounting surface of thehousing and the circuit board is perpendicular to the second mountingsurface.

In a variation of this embodiment, the lens holder is physically alignedwith the circuit board to satisfy a dimension requirement for the scanengine.

In a variation, the dimension requirement is less than a maximumpossible dimension of the circuit board and the lens holder incombination that includes nominal dimensions, dimension tolerances andalignment tolerances.

In a variation, the dimension requirement is 7.2 mm.

In a variation of this embodiment, physically aligning the lens holderwith the circuit board includes moving the lens holder and/or thecircuit board along only one axis.

In a variation of this embodiment, physically aligning the lens holderwith the circuit board includes: capturing, with a machine visioncamera, one or more first images of the edge of the circuit boardtogether with the surface of the lens holder; moving, using thealignment fixture, the lens holder and/or the circuit board based uponthe one or more first images; capturing, with the machine vision camera,one or more second images of the edge of the circuit board together withthe surface of the lens holder; and verifying a physical alignment ofthe surface of the lens holder with the edge of the circuit board basedupon the one or more second images.

In a variation of this embodiment, after physically aligning the lensholder with the circuit board, the lens holder is optically misalignedwith the image sensor.

In a variation, the lens holder is optically misaligned with the imagesensor only along one axis.

In a variation of this embodiment, the method further includesdetermining an offset between the edge of the circuit board and thesurface of the lens holder, wherein the lens holder is physicallyaligned with the circuit board in response to the offset satisfying acriteria.

In a variation of this embodiment, physically aligning the lens holderwith the circuit board includes: determining an amount of movement ofthe lens holder relative to the circuit board necessary to align thesurface of the lens holder with the edge of the circuit board; andrejecting the scan engine when the amount of movement satisfies acriteria.

In a variation of this embodiment, the method further includes: afterphysically aligning the lens holder with the circuit board, determininga dimension of the scan engine that includes the circuit board and thelens holder; and rejecting the scan engine when the dimension satisfiesa criteria.

In a variation of this embodiment, optically aligning the lens holderwith the image sensor includes aligning an optical axis of the lensholder with a center pixel of the image sensor.

In a variation of this embodiment, physically aligning the lens holderwith the circuit board includes moving the lens holder relative to thecircuit board and/or moving the circuit board relative to the lensholder.

In a variation of this embodiment, the method further includes, afterthe circuit board is physically aligned with the lens holder, securingthe lens holder to the circuit board.

In another embodiment, an assembly apparatus for aligning a lens holderin a scan engine includes: a first fixture configured to hold a circuitboard having an image sensor mounted thereon; a second fixtureconfigured to hold a lens holder holding one or more lenses or opticalelements; and a machine vision camera. The assembly further includes acontroller configured to control at least one of the first fixture orthe second fixture to optically align the lens holder with the imagesensor based upon one or more images captured by the image sensorthrough the lens holder, control the camera to capture one or moreimages of a surface of the lens holder together with an edge of thecircuit board, and after the optical alignment, control the at least oneof the first fixture or the second fixture to move based upon the edgeof the circuit board.

In a variation of this embodiment, the controller is configured tocontrol the at least one of the first fixture or the second fixture tomove based upon the edge such that the surface of the lens holder andthe edge of the circuit board are physically aligned.

In a variation of this embodiment, the controller is configured tocontrol the at least one of the first fixture or the second fixture tomove based upon the edge such that a dimension requirement for the scanengine is satisfied.

In a variation of this embodiment, the controller is configured tocontrol the at least one of the first fixture or the second fixture tomove based upon the edge such the lens holder and the circuit board onlymove relative to each other only along one axis.

In a variation of this embodiment, the controller is configured to,after controlling at least one of the first fixture or the secondfixture to move based upon the edge, cause the lens holder to be securedto the circuit board.

In yet another embodiment, a non-transitory, computer-readable, storagemedium stores computer-readable instructions that, when executed by oneor more processors, cause an assembly apparatus to: control a firstfixture of the assembly apparatus to secure a circuit board having animage sensor mounted thereon; control a second fixture of the assemblyapparatus to secure a lens holder holding one or more lenses or opticalelements; control at least one of the first fixture or the secondfixture to optically align the lens holder with the image sensor basedupon one or more images captured by the image sensor through the lensholder; control a camera of the assembly apparatus to capture one ormore images of a surface of the lens holder together with an edge of thecircuit board; and after the optically alignment, control at least oneof the first fixture or the second fixture to move based upon amisalignment between the surface of the lens holder and the edge of thecircuit board.

In a variation of this embodiment, the instructions, when executed bythe one or more processors, causes the assembly apparatus to control atleast one of the first fixture or the second fixture to move based uponthe misalignment such that the surface of the lens holder and the edgeof the circuit board are physically aligned.

In a variation of this embodiment, the instructions, when executed bythe one or more processors, causes the assembly apparatus to control atleast one of the first fixture or the second fixture to move based uponthe misalignment such the lens holder and the circuit board only moverelative to each other along one axis.

In still another embodiment, an scan engine includes: a circuit board;an image sensor mounted to the circuit board; and a lens holder holdingone or more lenses or optical elements mounted to the circuit boardabove the image sensor, wherein the image sensor is configured tocapture images of a field of view through the lens holder, and wherein asurface of the lens holder is coplanar with an edge of the circuit boardsuch that the lens holder is not optically aligned with the image sensoralong at least one axis.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying figures, where like reference numerals refer toidentical or functionally similar elements throughout the separateviews, together with the detailed description below, are incorporated inand form part of the specification, and serve to further illustrateembodiments of concepts that include the claimed invention, and explainvarious principles and advantages of those embodiments.

FIG. 1 is a block diagram of an example scan engine, in accordance withembodiments of the disclosure.

FIG. 2 is a block diagram of an example scan engine after opticalalignment, in accordance with embodiments of the disclosure.

FIG. 3 is a block diagram of the example scan engine of FIG. 2 afteradjustment based upon an edge of a circuit board, in accordance withembodiments of the disclosure.

FIG. 4 is a perspective bottom view of an example small-height scanengine that may be aligned according to the methods disclosed herein.

FIG. 5 is a perspective side view of the example small-height scanengine of FIG. 4 after lens holder physical alignment according to themethods disclosed herein.

FIG. 6 is a schematic diagram of an example assembly apparatus, inaccordance with embodiments of the disclosure.

FIG. 7 is a flowchart representative of an example method, hardwarelogic, machine-readable instructions, or software for aligning a lensholder in a small-height scan engine, in accordance with embodiments ofthe disclosure.

FIG. 8 is a flowchart representative of an example method, hardwarelogic, machine-readable instructions, or software for adjusting aphysical position of a lens holder in a small-height scan engine basedupon an edge of a circuit board, in accordance with embodiments of thedisclosure.

FIG. 9 is a block diagram of an example logic circuit for implementingexample methods and/or operations described herein.

Skilled artisans will appreciate that elements in the figures areillustrated for simplicity and clarity and have not necessarily beendrawn to scale. For example, the dimensions of some of the elements inthe figures may be exaggerated relative to other elements to help toimprove understanding of embodiments of the present invention.

The apparatus and method components have been represented whereappropriate by conventional symbols in the drawings, showing only thosespecific details that are pertinent to understanding the embodiments ofthe present invention so as not to obscure the disclosure with detailsthat will be readily apparent to those of ordinary skill in the arthaving the benefit of the description herein.

DETAILED DESCRIPTION

Reference will now be made in detail to non-limiting examples, some ofwhich are illustrated in the accompanying drawings.

While example scan engines are shown in particular orientations in theattached figures and described with terms (e.g., width, height, etc.)according to those orientations, it will be readily apparent to those ofordinary skill in the art that such terms may need to be changed when ascan engine is considered in a different orientation. Further, while thefollowing description and the attached claims refer to opticalalignment, physical alignment, coplanar, etc., it will be readilyapparent to those of ordinary skill in the art that such alignments neednot be precise and are typically done to within a pre-determinedtolerance. Thus, the term alignment (e.g., optical or physical) refersto both substantial alignment, and alignment within a pre-determinedtolerance; and the term coplanar refers to both substantially coplanar,and coplanar within a pre-determined tolerance.

FIG. 1 illustrates an end view of an example scan engine 100 including,among other things, a circuit board 105 having an image sensor 110mounted thereon, and a lens holder 115 holding one or more lenses orother optical elements 120, 121, 122. In the example of FIG. 1 , thecircuit board 105 and the lens holder 115 have the same width 125 (i.e.,in the horizontal direction in FIG. 1 ), the image sensor 110 is mountedat the center 130 of the circuit board 105, and an optical axis 135 ofthe lens holder 115 is optically aligned with a center pixel 140 of theimage sensor 110. Thus, an overall width of the scan engine 100 is thesame as the width 125 of the circuit board 105 and the lens holder 115,and a surface 145 of the lens holder 115 is physically aligned (e.g.,coplanar) with an edge 150 of the circuit board. In some examples, thesurface 145 and the edge 150 form a mounting surface 155, and the scanengine 100 is mount on its side with the mounting surface 155 against amounting surface of a housing such that the circuit board 105 isperpendicular to the mounting surface of the housing.

In the illustrated example of FIG. 1 , all the parts have their nominalwidths and are substantially aligned. However, in practice, the widthsof the circuit board 105 and the lens holder 115 may vary due tomanufacturing tolerances, the image sensor 110 may be off center due tomanufacturing tolerances, and/or the lens holder 115 and the imagesensor 110 may not be precisely optically aligned due to alignmenttolerances.

FIG. 2 illustrates an end view of the example scan engine 100 of FIG. 1when, for example, the image sensor 110 is off center due tomanufacturing tolerances. Thus, the lens holder 115 and circuit board105 are physically misaligned (e.g., offset). That is, the surface 145and the edge 150 are not physically aligned (e.g., not coplanar).Accordingly, an overall width 205 of the scan engine 100 is greater thana width of the circuit board 105. Depending on manufacturing tolerancesand/or alignment tolerances, the resulting width 205 of the scan engine100 may exceed a maximum allowable width of the scan engine 100.

The offset of the lens holder 115 relative to the circuit board 105shown in FIG. 2 may also arise when, for example, the image sensor 110is centered on the center 130 of the circuit board, but the lens holder115 is not precisely optically aligned with the image sensor 110.Furthermore, the offset may arise due to image sensor 110 misplacementand optical misalignment. Further still, the offset may arise due to thelens holder 115 being wider than its nominal width. Still further, thelens holder 115 may protrude to the right past the circuit board 105(e.g., as shown in FIG. 2 ) or to the left.

In some embodiments, (1) a maximum allowable width of the scan engine100 (e.g., 7.2 mm) is the same as the maximum width of the circuit board105 (e.g., width of circuit board 105 is 7.1±0.1 mm); (2) a width of thelens holder 115 is 7.1±0.05 mm, and (3) optical alignment is ±0.2 mm dueto image sensor 110 placement and/or optical alignment tolerances. Thus,given a circuit board 105 having its maximum width of 7.2 mm, any offsetof the lens holder 115 relative to the circuit board (e.g., ±0.2 mm) mayresult in an overall dimension 205 of the scan engine 100 (e.g., 7.4 mm)that exceeds the maximum allowable width (e.g., 7.2 mm). Additionallyand/or alternatively, in some embodiments, the scan engine 100 ismounted on its side with the surface 145 and the edge 150 against amounting surface of a housing such that the circuit board 105 isperpendicular to the mounting surface of the housing. In suchembodiments, any protrusion of the edge 150 beyond the surface 145(e.g., as shown in FIG. 2 ) may result in mounting forces appliedagainst the circuit board 105 such that the lens holder 115 may becomeunsecured from the circuit board 105.

Accordingly, in disclosed embodiments, after the lens holder 115 isoptically aligned (e.g., within a pre-determined tolerance) with theimage sensor 110 (e.g., as shown in FIG. 2 ) but before the lens holder115 is secured to the circuit board 105, the lens holder 115 isphysically aligned with the circuit board 105 based upon the edge 150(e.g., based upon a misalignment of the surface 145 and the edge 150).For example, such that the surface 145 and the edge 150 are physicallyaligned (e.g., such that they are coplanar), as shown in FIG. 3 . Insome examples, physically aligning the lens holder 115 with the circuitboard 105 only adjusts their positions with respect to the other alongonly one axis (e.g., only adjusting the surface 145 towards or away fromthe edge 150). As used herein, aligning part A with part B refers to anyof (1) moving part A while part B is held still, (2) moving part B whilepart A is held still, or (3) moving both part A and part B. Moreover,which parts are moved and held still may vary during an assemblyprocess.

In some examples, a machine vision camera is used during an assemblyprocess for the scan engine 100 to capture one or more images of the endof the scan engine 100 that shows the surface 145 and the edge 150, anda controller controls an assembly apparatus (e.g., the example assemblyapparatus 600 of FIG. 6 ) to adjust the position of the lens holder 115relative to the circuit board 105 and/or the position of the circuitboard 105 relative to the lens holder 115 based upon the one or moreimages. In some examples, the controller determines an offset betweenthe surface 145 and the edge 150 based upon images captured afteroptical alignment (e.g., as shown in FIG. 2 ). To ensure a minimumoptical alignment, the controller may reject (e.g., discard) a scanengine when the offset exceeds a threshold. In some examples, thecontroller only adjusts the position of the lens holder 115 relative tothe circuit board 105 and/or the position of the circuit board 105relative to the lens holder 115 when the lens holder 115 protrudesbeyond either edge of the circuit board 105 (e.g., to the right as shownin FIG. 2 , or to the left). The controller may, as images are captured,control the assembly apparatus to make incremental movements of thecircuit board 105 and/or the lens holder 115 until the surface 145 andthe edge 150 are physically aligned (e.g., within a threshold distance).Additionally and/or alternatively, the controller may determine, basedupon the captured image(s), a needed adjustment, control the assemblyapparatus to move a corresponding amount, and then use one or morecaptured images to verify the alignment. In some examples, after thephysical alignment of the lens holder 115 with the circuit board 105,the controller uses one or more additional captured images to verify anactual overall width of the scan engine 100 such that a scan engine 100that exceeds a maximum allowable width may be rejected (e.g.,discarded).

The lens holder 115 may become optically misaligned with the imagesensor 110 due to the physical alignment of the lens holder 115 with thecircuit board 105 based upon a misalignment of the surface 145 and theedge 150. However, when an offset is due, at least in part, to an errorin the initial optical alignment, the lens holder 115 may become betteroptically aligned with the image sensor 110 due to the physicalalignment of the lens holder 115 with the circuit board 105.

When for example, (1) a maximum allowable width of the scan engine 100(e.g., 7.2 mm) is the same as the maximum width of the circuit board 105(e.g., width of circuit board 105 is 7.1±0.1 mm) and (2) a maximum widthof the lens holder 115 (e.g., width of lens holder 115 is 7.1±0.05 mm)is less than or equal to the maximum width of the circuit board 105,then physically aligning the lens holder 115 with the circuit board 105(e.g., physically aligning the surface 145 with the edge 150 as shown inFIG. 3 ) ensures that the scan engine 100 is no wider than the maximumallowable scan engine width. In addition to ensuring that the width ofthe scan engine 100 is acceptable, physically aligning the surface 145with the edge 150, additionally and/or alternatively, may reducemounting forces on the circuit board 105 when the scan engine 100 ismounted on its side against a mounting surface of a housing.

FIG. 4 is a perspective bottom view of an example small-height scanengine 400 that may be used to implement the example scan engine 100 ofFIGS. 1-3 . FIG. 5 is a perspective side view of the examplesmall-height scan engine 400 of FIG. 4 after lens holder physicalalignment with the circuit board according to methods disclosed herein.The scan engine 400 includes the circuit board 105 and the lens holder115. As shown in FIG. 5 , after optical alignment of the lens holder 115with an image sensor (not shown for clarity of illustration), thesurface 145 of the lens holder 115 is physically aligned (e.g.,coplanar) with the edge 150 of the circuit board 105.

The example small-height scan engine 400 of FIGS. 4 and 5 is disclosedin U.S. Provisional Patent Application No. 63/194,506, filed May 28,2021, and entitled “Imaging Lens System and Scan Engine Chassis”), U.S.patent application Ser. No. 17/333,308, filed May 28, 2021, and entitled“Moving Front Lens Group Mechanically Located to Fixed Rear LensGroup”), and U.S. patent application Ser. No. 17/333,628, filed May 28,2021, and entitled “Compact Diffractive Optical Element Laser AimingSystem”). U.S. Provisional Patent Application No. 63/194,506, U.S.patent application Ser. No. 17/333,308, and U.S. patent application Ser.No. 17/333,628 are incorporated herein by reference in their entirety.

FIG. 6 is a schematic diagram of an example assembly apparatus 600configured to align lens holders in small-height scan engines, asdisclosed herein. To secure, hold, move, etc. the lens holder 115, theassembly apparatus 600 includes a first alignment fixture 605. Tosecure, hold, move, etc. the circuit board 105 with the image sensor 110mounted thereon, the assembly apparatus 600 includes a second alignmentfixture 610. A controller 615 is configured to control the fixture 605and/or the fixture 610 to position the lens holder 115 and/or thecircuit board 105 relative to each other along one or more axes. To movethe lens holder 115 and the circuit board 105 relative to each other,the controller 615 may (1) control the fixture 605 to move the lensholder 115 while controlling the fixture 610 to hold the circuit board105 at a fixed location, (2) control the fixture 605 to hold the lensholder 115 at a fixed location while controlling the fixture 610 to movethe circuit board 105, and/or (3) control the fixture 605 to move thelens holder 115 while controlling the fixture 610 to move the circuitboard 105. Which parts are held fixed or move may vary during anassembly process for a scan engine.

The controller 615 controls, based upon one or more images 620 capturedby the image sensor 110 through the lens holder 115, the fixture 605and/or the fixture 610 to move the lens holder 115 and/or the circuitboard 105 relative to each other to optically align the optical axis 135of the lens holder 115 with the center pixel 140 of the image sensor110, as shown in FIG. 2 .

To capture images 625 of an end of a scan engine being assembled thatincludes the surface 145 and the edge 150, the assembly apparatus 600includes a machine vision camera 630. The machine vision camera 630 maybe a small, telecentric (e.g., parallax-free) machine vision camera thatis positioned to image the end of a scan engine without interfering withmovements of the first fixture 605 or the second fixture 610.

After the optical axis 135 of the lens holder 115 are optically aligned,the controller 615, based upon images 625 captured by the camera 630 ofthe surface 145 and the edge 150, controls movement of the fixture 605and/or the fixture 610 to physically align the lens holder 115 with thecircuit board 105 based upon the edge 150 (e.g., based upon amisalignment of the surface 145 and the edge 150). For example, theposition of the lens holder 115 relative to the circuit board 105 and/orthe position of the circuit board 105 relative to the lens holder 115may be adjusted such that the surface 145 and the edge 150 arephysically aligned (e.g., coplanar), as shown in FIG. 3 . In someexamples, the position of the lens holder 115 relative to the circuitboard 105 and/or the position of the circuit board 105 relative to thelens holder 115 are only adjusted along one axis in one direction (e.g.,only adjusting the surface 145 towards or away from the edge 150).

FIG. 7 is a flowchart 700 representative of an example method, hardwarelogic, machine-readable instructions, or software for aligning a lensholder in a small-height scan engine, as disclosed herein. Any or all ofthe blocks of FIG. 7 may be an executable program or portion(s) of anexecutable program embodied in software and/or machine-readableinstructions stored on a non-transitory, machine-readable storage mediumfor execution by one or more processors such as the processor 902 ofFIG. 9 . Additionally and/or alternatively, any or all of the blocks ofFIG. 7 may be implemented by one or more hardware circuits structured toperform the corresponding operation(s) without executing software orinstructions.

The flowchart of FIG. 7 begins at block 705 with an image sensor 110being mounted to a circuit board 105 (block 705). A lens holder 115 isplaced in a first alignment fixture (e.g., the alignment fixture 605 ofFIG. 6 ), and the circuit board 105 is placed in a second alignmentfixture (e.g., the alignment fixture 610) (block 710).

A controller (e.g., the controller 615 of FIG. 6 ) controls the firstfixture and/or the second fixture to move the lens holder 115 and/or thecircuit board 105 such that an optical axis 135 of the lens holder 115is optically aligned with a center pixel of the image sensor 110 basedupon images 620 captured by the image sensor 110 through the lens holder115 (block 715).

A camera (e.g., the machine vision camera 630 of FIG. 3 ) captures oneor more images (e.g., the images 625) of the scan engine being assembledthat include the surface 145 of the lens holder 115 and the edge 150 ofthe circuit board 105 (block 720). After the optical alignment, thecontroller, based the captured images, controls the first fixture and/orthe second fixture to physically align the lens holder 115 with thecircuit board 105 based upon the edge 150 (e.g., based upon a physicalmisalignment of the surface 145 and the edge 150) (block 725). Forexample, the position of the lens holder 115 relative to the circuitboard 105 and/or the position of the circuit board 105 relative to thelens holder 115 may be adjusted such that the surface 145 and the edge150 are physically aligned (e.g., coplanar), as shown in FIG. 3 . Insome examples, the lens holder 115 and the circuit board 105 are onlyphysically aligned along only one axis (e.g., only adjusting the surface145 towards or away from the edge 150). An example flowchart 800 thatmay be carried out to implement block 725 is shown in FIG. 8 anddescribed below.

After the lens holder 115 and circuit board 105 are physically aligned,the lens holder 115 is secured to the circuit board 105 (block 730).

FIG. 8 is a flowchart 800 representative of example processes, methods,software, machine-readable instructions, etc. for physically aligning alens holder with a circuit board (e.g., at block 725 of FIG. 7 ). Any orall of the blocks of FIG. 8 may be an executable program or portion(s)of an executable program embodied in software and/or machine-readableinstructions stored on a non-transitory, machine-readable storage mediumfor execution by one or more processors such as the processor 902 ofFIG. 9 . Additionally and/or alternatively, any or all of the blocks ofFIG. 8 may be implemented by one or more hardware circuits structured toperform the corresponding operation(s) without executing software orinstructions.

The flowchart 800 of FIG. 8 begins at block 805 with a controller (e.g.,the controller 615 of FIG. 6 ) determining, based upon captured images(e.g., the images 625), an offset between the surface 145 and the edge150 after the optical alignment (e.g., at block 715 of FIG. 7 ) (block805). To ensure a scan engine being assembled will have sufficientoptical alignment, the controller may compare the offset to a firstthreshold (block 810) and reject (e.g., discard) the scan engine beingassembled (block 815) when the offset exceeds the first threshold (block810). In some examples, the controller only adjusts the position of thelens holder 115 relative to the circuit board 105 and/or the position ofthe circuit board 105 relative to the lens holder 115 when the lensholder 115 protrudes beyond either edge of the circuit board 105 (e.g.,to the right as shown in FIG. 2 , or to the left).

At block 820, the controller controls a first fixture (e.g., the fixture605 of FIG. 6 ) and/or a second fixture (e.g., the fixture 610 of FIG. 6) to adjust the position of the lens holder 115 relative to the circuitboard 105 and/or the position of the circuit board 105 relative to thelens holder 115 based upon images captured of the surface 145 and theedge 150 (block 820). For example, the controller may, as the images arecaptured, control the first fixture and the second fixture toincrementally move the lens holder 115 and/or the circuit board 105until the surface 145 and the edge 150 are physically aligned.Additionally and/or alternatively, the controller may determine, basedupon the captured images, a needed adjustment, and control the firstfixture and/or the second fixture to move the lens holder 115 and/or thecircuit board 105 a corresponding amount.

Based upon one or more additional captured images (block 825), thecontroller determines an offset between the surface 145 and the edge 150(block 830). The controller compares the offset to a second threshold(e.g., representing an alignment tolerance) (block 835) and, if theoffset is greater than the second threshold (block 835), control returnsto block 820 for further physical alignment.

If the offset is less than the second threshold (block 835), the cameramay capture one or more further captured images (block 840) and thecontroller may determine an overall dimension (e.g., a width) of thescan engine being assembled (block 845). If the overall dimensionexceeds a third threshold (e.g., a maximum size) (block 850), thecontroller may reject (e.g., discard) the scan engine being assembled(block 855).

Otherwise, the controller, based on one or more images 620 captured bythe image sensor 110 through the lens holder 115 determines an amount ofoptical misalignment or offset (e.g., expressed in pixels) between theimage sensor 110 and the lens holder 115 (block 860). If the opticaloffset is less than a fourth threshold (e.g., representing apre-determined optical alignment tolerance) (block 865), control exitsfrom the example flowchart 800 of FIG. 8 . Otherwise (block 865), thecontroller may reject (e.g., discard) the scan engine being assembled(block 870).

FIG. 9 is a block diagram representative of an example logic circuitcapable of implementing, for example, one or more components of theexample controller 615 of FIG. 6 or, more generally, the exampleassembly apparatus 600 of FIG. 6 . The example logic circuit of FIG. 9is a processing platform 900 capable of executing instructions to, forexample, implement operations of the example methods described herein,as may be represented by the flowcharts of the drawings that accompanythis description. Other example logic circuits capable of, for example,implementing operations of the example methods described herein includefield programmable gate arrays (FPGAs) and application specificintegrated circuits (ASICs).

The example processing platform 900 of FIG. 9 includes a processor 902such as, for example, one or more microprocessors, controllers, and/orany suitable type of processor. The example processing platform 900 ofFIG. 9 includes memory (e.g., volatile memory, non-volatile memory) 904accessible by the processor 902 (e.g., via a memory controller). Theexample processor 902 interacts with the memory 904 to obtain, forexample, machine-readable instructions stored in the memory 904corresponding to, for example, the operations represented by theflowcharts of this disclosure. Additionally or alternatively,machine-readable instructions corresponding to the example operationsdescribed herein may be stored on one or more removable media (e.g., acompact disc, a digital versatile disc, removable flash memory, etc.)that may be coupled to the processing platform 900 to provide access tothe machine-readable instructions stored thereon.

The processing platform 900 of FIG. 9 includes one or more communicationinterfaces such as, for example, one or more network interface 906,and/or one or more input/output (I/O) interfaces 908. The communicationinterface(s) enable the processing platform 900 of FIG. 9 to communicatewith, for example, another device (e.g., the fixture 605, the fixture610, the image sensor 110, the circuit board 105, the camera 630, etc.),system, host system, datastore, database, and/or any other machine.

The example processing platform 900 of FIG. 9 also includes the networkinterface(s) 906 to enable communication with other machines via, forexample, one or more networks. The example network interface 906includes any suitable type of communication interface(s) (e.g., wiredand/or wireless interfaces) configured to operate in accordance with anysuitable protocol(s).

The example, processing platform 900 of FIG. 9 also includes theinput/output (I/O) interface(s) 908 to enable receipt of user input andcommunication of output data to the user. The input/output (I/O)interface(s) 908 may be used to communicate with, for example, thefixture 605, the fixture 610, the image sensor 110, the circuit board105, and the camera 630.

The above description refers to a block diagram of the accompanyingdrawings. Alternative implementations of the example represented by theblock diagram includes one or more additional or alternative elements,processes and/or devices. Additionally or alternatively, one or more ofthe example blocks of the diagram may be combined, divided, re-arrangedor omitted. Components represented by the blocks of the diagram areimplemented by hardware, software, firmware, and/or any combination ofhardware, software and/or firmware. In some examples, at least one ofthe components represented by the blocks is implemented by a logiccircuit. As used herein, the term “logic circuit” is expressly definedas a physical device including at least one hardware componentconfigured (e.g., via operation in accordance with a predeterminedconfiguration and/or via execution of stored machine-readableinstructions) to control one or more machines and/or perform operationsof one or more machines. Examples of a logic circuit include one or moreprocessors, one or more coprocessors, one or more microprocessors, oneor more controllers, one or more digital signal processors (DSPs), oneor more application specific integrated circuits (ASICs), one or morefield programmable gate arrays (FPGAs), one or more microcontrollerunits (MCUs), one or more hardware accelerators, one or morespecial-purpose computer chips, and one or more system-on-a-chip (SoC)devices. Some example logic circuits, such as ASICs or FPGAs, arespecifically configured hardware for performing operations (e.g., one ormore of the operations described herein and represented by theflowcharts of this disclosure, if such are present). Some example logiccircuits are hardware that executes machine-readable instructions toperform operations (e.g., one or more of the operations described hereinand represented by the flowcharts of this disclosure, if such arepresent). Some example logic circuits include a combination ofspecifically configured hardware and hardware that executesmachine-readable instructions. The above description refers to variousoperations described herein and flowcharts that may be appended heretoto illustrate the flow of those operations. Any such flowcharts arerepresentative of example methods disclosed herein. In some examples,the methods represented by the flowcharts implement the apparatusrepresented by the block diagrams. Alternative implementations ofexample methods disclosed herein may include additional or alternativeoperations. Further, operations of alternative implementations of themethods disclosed herein may combined, divided, re-arranged or omitted.In some examples, the operations described herein are implemented bymachine-readable instructions (e.g., software and/or firmware) stored ona medium (e.g., a tangible machine-readable medium) for execution by oneor more logic circuits (e.g., processor(s)). In some examples, theoperations described herein are implemented by one or moreconfigurations of one or more specifically designed logic circuits(e.g., ASIC(s)). In some examples the operations described herein areimplemented by a combination of specifically designed logic circuit(s)and machine-readable instructions stored on a medium (e.g., a tangiblemachine-readable medium) for execution by logic circuit(s).

As used herein, each of the terms “tangible machine-readable medium,”“non-transitory machine-readable medium” and “machine-readable storagedevice” is expressly defined as a storage medium (e.g., a platter of ahard disk drive, a digital versatile disc, a compact disc, flash memory,read-only memory, random-access memory, etc.) on which machine-readableinstructions (e.g., program code in the form of, for example, softwareand/or firmware) are stored for any suitable duration of time (e.g.,permanently, for an extended period of time (e.g., while a programassociated with the machine-readable instructions is executing), and/ora short period of time (e.g., while the machine-readable instructionsare cached and/or during a buffering process)). Further, as used herein,each of the terms “tangible machine-readable medium,” “non-transitorymachine-readable medium” and “machine-readable storage device” isexpressly defined to exclude propagating signals. That is, as used inany claim of this patent, none of the terms “tangible machine-readablemedium,” “non-transitory machine-readable medium,” and “machine-readablestorage device” can be read to be implemented by a propagating signal.

In the foregoing specification, specific embodiments have beendescribed. However, one of ordinary skill in the art appreciates thatvarious modifications and changes can be made without departing from thescope of the invention as set forth in the claims below. Accordingly,the specification and figures are to be regarded in an illustrativerather than a restrictive sense, and all such modifications are intendedto be included within the scope of present teachings. Additionally, thedescribed embodiments/examples/implementations should not be interpretedas mutually exclusive, and should instead be understood as potentiallycombinable if such combinations are permissive in any way. In otherwords, any feature disclosed in any of the aforementionedembodiments/examples/implementations may be included in any of the otheraforementioned embodiments/examples/implementations.

The benefits, advantages, solutions to problems, and any element(s) thatmay cause any benefit, advantage, or solution to occur or become morepronounced are not to be construed as a critical, required, or essentialfeatures or elements of any or all the claims. The claimed invention isdefined solely by the appended claims including any amendments madeduring the pendency of this application and all equivalents of thoseclaims as issued.

Moreover in this document, relational terms such as first and second,top and bottom, and the like may be used solely to distinguish oneentity or action from another entity or action without necessarilyrequiring or implying any actual such relationship or order between suchentities or actions. The terms “comprises,” “comprising,” “has”,“having,” “includes”, “including,” “contains”, “containing” or any othervariation thereof, are intended to cover a non-exclusive inclusion, suchthat a process, method, article, or apparatus that comprises, has,includes, contains a list of elements does not include only thoseelements but may include other elements not expressly listed or inherentto such process, method, article, or apparatus. An element proceeded by“comprises . . . a”, “has . . . a”, “includes . . . a”, “contains . . .a” does not, without more constraints, preclude the existence ofadditional identical elements in the process, method, article, orapparatus that comprises, has, includes, contains the element. The terms“a” and “an” are defined as one or more unless explicitly statedotherwise herein. The terms “substantially”, “essentially”,“approximately”, “about” or any other version thereof, are defined asbeing close to as understood by one of ordinary skill in the art, and inone non-limiting embodiment the term is defined to be within 10%, inanother embodiment within 5%, in another embodiment within 1% and inanother embodiment within 0.5%. The term “coupled” as used herein isdefined as connected, although not necessarily directly and notnecessarily mechanically. A device or structure that is “configured” ina certain way is configured in at least that way, but may also beconfigured in ways that are not listed.

Further, unless expressly stated to the contrary, “or” refers to aninclusive or and not to an exclusive or. For example, “A, B or C” refersto any combination or subset of A, B, C such as (1) A alone, (2) Balone, (3) C alone, (4) A with B, (5) A with C, (6) B with C, and (7) Awith B and with C. As used herein, the phrase “at least one of A and B”is intended to refer to any combination or subset of A and B such as (1)at least one A, (2) at least one B, and (3) at least one A and at leastone B. Similarly, the phrase “at least one of A or B” is intended torefer to any combination or subset of A and B such as (1) at least oneA, (2) at least one B, and (3) at least one A and at least one B

The Abstract of the Disclosure is provided to allow the reader toquickly ascertain the nature of the technical disclosure. It issubmitted with the understanding that it will not be used to interpretor limit the scope or meaning of the claims. In addition, in theforegoing Detailed Description, it can be seen that various features aregrouped together in various embodiments for the purpose of streamliningthe disclosure. This method of disclosure is not to be interpreted asreflecting an intention that the claimed embodiments require morefeatures than are expressly recited in each claim. Rather, as thefollowing claims reflect, inventive subject matter may lie in less thanall features of a single disclosed embodiment. Thus, the followingclaims are hereby incorporated into the Detailed Description, with eachclaim standing on its own as a separately claimed subject matter.

The invention claimed is:
 1. A method for aligning a lens holder in asmall-height scan engine, the method comprising: mounting an imagesensor to a circuit board; optically aligning, using one or morealignment fixtures, a lens holder holding one or more lenses or opticalelements with the image sensor based upon one or more images captured bythe image sensor through the lens holder; and after the lens holder andimage sensor are optically aligned, physically aligning, using the oneor more alignment fixtures, the lens holder with the circuit board basedupon a misalignment between a surface of the lens holder and an edge ofthe circuit board.
 2. The method of claim 1, wherein physically aligningthe lens holder with the circuit board includes physically aligning thesurface of the lens holder with the edge of the circuit board.
 3. Themethod of claim 2, wherein the surface of the lens holder is alignedwith the edge of the circuit board when the surface of the lens holderand the edge of the circuit board are coplanar.
 4. The method of claim2, wherein the surface of the lens holder, when physically aligned withthe edge of the circuit board, together with the edge of the circuitboard form a first mounting surface, the method further comprisingsecuring the scan engine in a housing such that the first mountingsurface is secured against a second mounting surface of the housing andthe circuit board is perpendicular to the second mounting surface. 5.The method of claim 1, wherein the lens holder is physically alignedwith the circuit board to satisfy a dimension requirement for the scanengine.
 6. The method of claim 5, wherein the dimension requirement isless than a maximum possible dimension of the circuit board and the lensholder in combination that includes nominal dimensions, dimensiontolerances and alignment tolerances.
 7. The method of claim 5, whereinthe dimension requirement is 7.2 mm.
 8. The method of claim 1, whereinphysically aligning the lens holder with the circuit board includesmoving the lens holder and/or the circuit board along only one axis. 9.The method of claim 1, wherein physically aligning the lens holder withthe circuit board includes: capturing, with a machine vision camera, oneor more first images of the edge of the circuit board together with thesurface of the lens holder; moving, using the alignment fixture, thelens holder and/or the circuit board based upon the one or more firstimages; capturing, with the machine vision camera, one or more secondimages of the edge of the circuit board together with the surface of thelens holder; and verifying a physical alignment of the surface of thelens holder with the edge of the circuit board based upon the one ormore second images.
 10. The method of claim 1, wherein, after physicallyaligning the lens holder with the circuit board, the lens holder isoptically misaligned with the image sensor.
 11. The method of claim 10,wherein the lens holder is optically misaligned with the image sensoronly along one axis.
 12. The method of claim 1, further comprisingdetermining an offset between the edge of the circuit board and thesurface of the lens holder, wherein the lens holder is physicallyaligned with the circuit board in response to the offset satisfying acriteria.
 13. The method of claim 1, wherein physically aligning thelens holder with the circuit board includes: determining an amount ofmovement of the lens holder relative to the circuit board necessary toalign the surface of the lens holder with the edge of the circuit board;and rejecting the scan engine when the amount of movement satisfies acriteria.
 14. The method of claim 1, further comprising: afterphysically aligning the lens holder with the circuit board, determininga dimension of the scan engine that includes the circuit board and thelens holder; and rejecting the scan engine when the dimension satisfiesa criteria.
 15. The method of claim 1, wherein optically aligning thelens holder with the image sensor includes aligning an optical axis ofthe lens holder with a center pixel of the image sensor.
 16. The methodof claim 1, wherein physically aligning the lens holder with the circuitboard includes moving the lens holder relative to the circuit boardand/or moving the circuit board relative to the lens holder.
 17. Themethod of claim 1, further comprising, after the circuit board isphysically aligned with the lens holder, securing the lens holder to thecircuit board.
 18. An assembly apparatus for aligning a lens holder in ascan engine, the assembly apparatus comprising: a first fixtureconfigured to hold a circuit board having an image sensor mountedthereon; a second fixture configured to hold a lens holder holding oneor more lenses or optical elements; a machine vision camera; and acontroller configured to control at least one of the first fixture orthe second fixture to optically align the lens holder with the imagesensor based upon one or more images captured by the image sensorthrough the lens holder, control the camera to capture one or moreimages of a surface of the lens holder together with an edge of thecircuit board, and after the optical alignment, control the at least oneof the first fixture or the second fixture to move based upon the edgeof the circuit board.
 19. The assembly apparatus of claim 18, whereinthe controller is configured to control the at least one of the firstfixture or the second fixture to move based upon the edge such that thesurface of the lens holder and the edge of the circuit board arephysically aligned.
 20. The assembly apparatus of claim 18, wherein thecontroller is configured to control the at least one of the firstfixture or the second fixture to move based upon the edge such that adimension requirement for the scan engine is satisfied.
 21. The assemblyapparatus of claim 18, wherein the controller is configured to controlthe at least one of the first fixture or the second fixture to movebased upon the edge such the lens holder and the circuit board only moverelative to each other only along one axis.
 22. The assembly apparatusof claim 18, wherein the controller is configured to, after controllingat least one of the first fixture or the second fixture to move basedupon the edge, cause the lens holder to be secured to the circuit board.23. A non-transitory, computer-readable, storage medium storingcomputer-readable instructions that, when executed by one or moreprocessors, cause an assembly apparatus to: control a first fixture ofthe assembly apparatus to secure a circuit board having an image sensormounted thereon; control a second fixture of the assembly apparatus tosecure a lens holder holding one or more lenses or optical elements;control at least one of the first fixture or the second fixture tooptically align the lens holder with the image sensor based upon one ormore images captured by the image sensor through the lens holder;control a camera of the assembly apparatus to capture one or more imagesof a surface of the lens holder together with an edge of the circuitboard; and after the optically alignment, control at least one of thefirst fixture or the second fixture to move based upon a misalignmentbetween the surface of the lens holder and the edge of the circuitboard.
 24. The storage medium of claim 23, wherein the instructions,when executed by the one or more processors, causes the assemblyapparatus to control at least one of the first fixture or the secondfixture to move based upon the misalignment such that the surface of thelens holder and the edge of the circuit board are physically aligned.25. The storage medium of claim 23, wherein the instructions, whenexecuted by the one or more processors, causes the assembly apparatus tocontrol at least one of the first fixture or the second fixture to movebased upon the misalignment such the lens holder and the circuit boardonly move relative to each other along one axis.
 26. A scan enginecomprising: a circuit board; an image sensor mounted to the circuitboard; and a lens holder holding one or more lenses or optical elementsmounted to the circuit board above the image sensor, wherein the imagesensor is configured to capture images of a field of view through thelens holder, and wherein a surface of the lens holder is coplanar withan edge of the circuit board such that the lens holder is not opticallyaligned with the image sensor along at least one axis.